mod l1;
mod mse;
mod rmse;
mod cross_entropy;

use crate::Var;

pub use l1::L1Loss;
pub use mse::MSELoss;
pub use rmse::RMSE;
pub use cross_entropy::CorssEntropyLoss;

pub trait Criterion {
    fn loss(&self, predicted: &[Var], target: &[Var]) -> Var;
}
